package com.zkyc.framework.user.service;

import com.zkyc.framework.common.dto.PageDto;
import com.zkyc.framework.common.pojo.User;
import com.zkyc.framework.common.vo.ResultVO;
import com.zkyc.framework.common.vo.user.*;

import javax.servlet.ServletRequest;
import javax.servlet.http.HttpSession;

/**
 * (User)表服务接口
 *
 * @since 2022-05-17 15:44:58
 */
public interface UserService {
    ResultVO login(UserVo userVo, HttpSession session);

    ResultVO changePassword(ChangePasswordVo changePasswordVo);

    ResultVO logout(ServletRequest servletRequest);

    User queryById(String id);

    ResultVO insert(UserRoleVo userRoleVo);

    ResultVO update(UserRoleVo userRoleVo);

    ResultVO deleteById(String id);

    ResultVO getUserList(UserPageVo userPageVo);

    ResultVO getRightByWebsite(Integer websiteId);

    ResultVO getRoleListByUserId(String userId);

    ResultVO getRoleByUserId(String userId);

    ResultVO queryRightByUserId(String userId);

    ResultVO forbidden(String userId, Integer status);

    ResultVO getUserRightByWebsite(Integer websiteId);

    ResultVO resetPassword(String userId);

    ResultVO judgeAdminUser(UserIdVo userIdVo);

    ResultVO judgeRightExist(Integer websiteId,String userId);

    ResultVO getUserWebMenu(Integer websiteId,String userId);

    ResultVO getWebInfoByUserId(String userId);

    ResultVO getCenterInfoByCenterId(Integer centerId);

    ResultVO judgeUserIsAdmin(String userId);
}
